﻿Imports System.ComponentModel
Imports Autodesk.AutoCAD.DatabaseServices
'''
<RefreshProperties(System.ComponentModel.RefreshProperties.All), _
TypeConverter(GetType(OrderedPropertyGrid.PropertySorter)), _
DefaultPropertyAttribute("MTCount")> _
Public Class CLDS_MTSegment_Properties
    Private _MTCode As String = ""
    Private _MTCount As Integer = 0
    Private _MTTiers As String = "-"
    Private _MTTypes As String = "-"
    Private _MTYOffs As String = "-"
    Private _MTZOffs As String = "-"
    Private _MTSegs As String = "-"
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](True), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(2), _
       DisplayName("Multi-tier code"), _
       DescriptionAttribute("Multi-tier equipment code")> _
       Public Property MTCode() As String
        Get
            Return UCase(_MTCode)
        End Get
        Set(ByVal Value As String)
            _MTCode = UCase(Value)
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](True), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(1), _
       DisplayName("Tier count"), _
       DescriptionAttribute("Number of tiers in multi-tier layout, or zero if not multi-tier")> _
       Public Property MTCount() As Integer
        Get
            Return _MTCount
        End Get
        Set(ByVal Value As Integer)
            _MTCount = Value
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](False), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(2), _
       DisplayName("Tier names"), _
       DescriptionAttribute("Comma-separated tier names")> _
       Public Property MTTiers() As String
        Get
            Return UCase(_MTTiers)
        End Get
        Set(ByVal Value As String)
            _MTTiers = UCase(Value)
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](False), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(3), _
       DisplayName("Types"), _
       DescriptionAttribute("Comma-separated network types per tier")> _
       Public Property MTTypes() As String
        Get
            Return _MTTypes
        End Get
        Set(ByVal Value As String)
            _MTTypes = Value
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](False), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(4), _
       DisplayName("Y offsets"), _
       DescriptionAttribute("Comma-separated lateral offsets per tier")> _
       Public Property MTYOffs() As String
        Get
            Return UCase(_MTYOffs)
        End Get
        Set(ByVal Value As String)
            _MTYOffs = UCase(Value)
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](False), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(5), _
       DisplayName("Z offsets"), _
       DescriptionAttribute("Comma-separated vertical offsets per tier")> _
       Public Property MTZOffs() As String
        Get
            Return UCase(_MTZOffs)
        End Get
        Set(ByVal Value As String)
            _MTZOffs = UCase(Value)
        End Set
    End Property
    <CategoryAttribute("Multi-tier"), _
       Browsable(True), _
       [ReadOnly](False), _
       BindableAttribute(False), _
       DefaultValueAttribute(""), _
       DesignOnly(False), _
       OrderedPropertyGrid.PropertyOrder(6), _
       DisplayName("Segregations"), _
       DescriptionAttribute("Comma-separated segregations per tier")> _
       Public Property MTSegs() As String
        Get
            Return UCase(_MTSegs)
        End Get
        Set(ByVal Value As String)
            _MTSegs = UCase(Value)
        End Set
    End Property
End Class
